package com.uzai.console.service.zombiefanpassive;

import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.uzai.console.dto.zombiefanpassive.zombiefanpassivetask.ZombieFanPassiveFindByDeviceTypeDto;
import com.uzai.console.dto.zombiefanpassive.zombiefanpassivetask.ZombieFanPassiveTaskDto;
import com.uzai.console.dto.zombiefanpassive.zombiefanpassivetask.ZombieFanPassiveTaskIdDto;
import com.uzai.console.dto.zombiefanpassive.zombiefanpassivetask.ZombieFanPassiveTaskQuery;
import com.uzai.console.entity.ZombieFanPassiveTask;
import com.uzai.console.vo.zombiefanpassive.zombiefanpassivetask.ZombieFanPassiveTaskVo;

/**
 * @author liuqi
 * @date 2021年08月13日 11:33
 */
public interface ZombieFanPassiveTaskService {

    /**
     * 查询清理僵尸粉任务列表
     * @author liuqi
     * @date 2021/8/13 11:38
     * @param query
     * @return null
     */
    Page<ZombieFanPassiveTaskVo> findZombieFanPassiveTaskList(ZombieFanPassiveTaskQuery query);

    /**
     * 查询清理僵尸粉任务详情
     * @author liuqi
     * @date 2021/8/13 11:38
     * @param zombieFanPassiveTaskIdDto
     * @return null
     */
    ZombieFanPassiveTaskVo findZombieFanPassiveTask(ZombieFanPassiveTaskIdDto zombieFanPassiveTaskIdDto);

    /**
     * 查询清理僵尸粉任务详情
     * @author liuqi
     * @date 2021/8/13 11:38
     * @param zombieFanPassiveFindByDeviceTypeDto
     * @return null
     */
    ZombieFanPassiveTaskVo findZombieFanPassiveTaskByDevice(ZombieFanPassiveFindByDeviceTypeDto zombieFanPassiveFindByDeviceTypeDto);

    /**
     * 添加清理僵尸粉任务
     * @author liuqi
     * @date 2021/8/13 11:38
     * @param zombieFanPassiveTaskDto
     * @return null
     */
    void addZombieFanPassiveTask(ZombieFanPassiveTaskDto zombieFanPassiveTaskDto);

    /**
     * 删除清理僵尸粉任务
     * @author liuqi
     * @date 2021/8/13 11:38
     * @param zombieFanPassiveTaskIdDto
     * @return null
     */
    void deleteZombieFanPassiveTask(ZombieFanPassiveTaskIdDto zombieFanPassiveTaskIdDto);

    /**
     * 修改清理僵尸粉任务
     * @author liuqi
     * @date 2021/8/13 11:38
     * @param zombieFanPassiveTaskDto
     * @return null
     */
    void updateZombieFanPassiveTask(ZombieFanPassiveTaskDto zombieFanPassiveTaskDto);

    /**
     * 自动添加被动僵尸粉
     * @author liuqi
     * @date 2021/8/13 11:38
     * @param zombieFanPassiveTask
     * @return null
     */
    void autoAddZombieFanPassive(ZombieFanPassiveTask zombieFanPassiveTask);

}
